package cloudgamesaumysql

import (
	"github.com/shopspring/decimal"
	"gorm.io/gorm"
	"time"
)

/*
  @author liubogeng
  @date   2024/11/21 20:07
*/

// CGGameAUUserWechatOrder 云游戏AU用户微信订单表
type CGGameAUUserWechatOrder struct {
	ID            int64  `json:"id" gorm:"column:id;type:bigint;primaryKey;autoIncrement;comment:ID"`
	WechatOrderID string `json:"wechat_order_id" gorm:"column:wechat_order_id;type:varchar(256);not null;default:'';comment:微信侧订单ID"`
	TransactionID int64  `json:"transaction_id" gorm:"column:transaction_id;type:bigint;not null;default:0;comment:用户充值记录ID"`
	RechargeType  string `json:"recharge_type" gorm:"column:recharge_type;type:varchar(32);default:'';not null;comment:充值类型，目前有 平台，劲舞团，直购"`
	//Subject           string          `json:"subject" gorm:"column:subject;type:varchar(256);not null;default:'';comment:订单标题/商品标题/交易标题/订单关键字等，是请求时对应参数，会在通知中原样传回"`
	OrderAmount       decimal.Decimal `json:"order_amount" gorm:"column:order_amount;type:decimal(12,2);not null;default:0.00;comment:订单金额"`
	OutRequestNo      string          `json:"out_request_no" gorm:"column:out_request_no;type:varchar(128);not null;default:'';comment:微信支付退款支持单笔交易分多次退款，多次退款需要提交原支付订单的商户订单号和设置不同的退款单号。申请退款总金额不能超过订单金额。 一笔退款失败后重新提交，请不要更换退款单号，请使用原商户退款单号"`
	IsRefund          int             `json:"is_refund" gorm:"column:is_refund;type:tinyint;not null;default:0;comment:是否退款 0未退款 1部分退款 2全额退款"`
	RefundOrderAmount decimal.Decimal `json:"refund_order_amount" gorm:"column:refund_order_amount;type:decimal(12,2);not null;default:0.00;comment:退款金额"`
	RefundTime        time.Time       `json:"refund_time" gorm:"column:refund_time;type:datetime;default:null;comment:退款时间"`
	CreatedAt         time.Time       `json:"created_at" gorm:"column:created_at;type:datetime;comment:该条记录创建时间"`
	UpdatedAt         time.Time       `json:"updated_at" gorm:"column:updated_at;type:datetime;comment:该条记录修改时间"`
	DeletedAt         gorm.DeletedAt  `json:"-" gorm:"index;type:datetime;comment:该条记录删除时间"`
}

func (CGGameAUUserWechatOrder) TableName() string {
	return "cg_game_au_user_wechat_order"
}
